查看原文
其他

一位中国博士把整个CNN都给可视化了,可交互有细节,每次卷积ReLU池化都清清楚楚

郭一璞 发自 云凹非寺

转自 | 量子位

CNN是什么?美国有线电视新闻网吗?
每一个对AI抱有憧憬的小白,在开始的时候都会遇到CNN(卷积神经网络)这个词。
但每次,当小白们想了解CNN到底是怎么回事,为什么就能聪明的识别人脸、听辨声音的时候,就懵了,只好理解为玄学:
好吧,维基百科解决不了的问题,有人给解决了。
这个名叫CNN解释器在线交互可视化工具,把CNN拆开了揉碎了,告诉小白们CNN究竟是怎么一回事,为什么可以辨识物品。
它用TensorFlow.js加载了一个10层的预训练模型,相当于在你的浏览器上跑一个CNN模型,只需要打开电脑,就能了解CNN究竟是怎么回事。
而且,这个网页工具还可以实现交互,只要点击其中任何一个格子——就是CNN中的“神经元”,就能显示它的输入是哪些、经过了怎样细微的变化。
甚至,连每一次卷积运算都能看得清。


   看清卷积


这个CNN解释器的使用方式也非常简单:鼠标戳戳戳就好了。
单击神经元,进入弹性解释视图,就可以看到卷积核滑动的过程的动画模拟:
点击一个正在卷积的过程图,就可以看到更具体的过程:
可以看到底层的卷积运算过程,3×3的卷积核是如何经过运算被变成1个数字的。


   看清ReLU和最大池化层

点击一个ReLU层的神经元,可以看具体过程,ReLU函数是这样工作的:
点击一个池化神经元,也可以看具体最大池化层是怎样工作的:



   看清CNN是怎么输出预测的

点击最右侧的输出神经元,进入弹性解释视图:
可以查看Softmax函数的详情:



   识别「狸克」试试?

CNN解释器默认有10张图片,你也可以增加自己的自定义图片。
比如这个:
芝士焗灯笼椒?灯笼椒披萨?还是什么鬼?
复制图片链接或者上传图片之后,它经过了10层处理,得出结论:
是灯笼椒,但也可能是臭虫。
但是,只能归类于右侧原有的10个品类里,比如放一只狸克:
就会被识别成espresso。


   佐治亚理工中国博士出品

最后,这个CNN解释器的作者是一位中国小哥,佐治亚理工的Zijie Wang,去年刚开始读机器学习博士,本科毕业于威斯康星大学麦迪逊分校,是一位GPA 3.95/4.00的大学霸。
他也曾经做过一些其他有趣的数据可视化项目,比如威斯康星大学麦迪逊分校的中国本科生都来自哪里:


   传送门

CNN解释器
https://poloclub.github.io/cnn-explainer/
GitHub
https://github.com/poloclub/cnn-explainer
论文
https://arxiv.org/abs/2004.15004
作者系网易新闻·网易号“各有态度”签约作者


—完—
为您推荐在《我的世界》里搭建神经网络,运行过程清晰可见,不仅好玩,而且代码全部开源!
MIT最新深度学习入门课,安排起来!有了这个神器,轻松用 Python 写个 App「最全」实至名归,NumPy 官方早有中文教程
我为什么鼓励你读计算机领域的博士?

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存